package com.tangsm.api.demo.enums;

import org.springframework.http.HttpStatus;

/**
 * API 状态码枚举
 * @author 湯神码
 * @date 2020/10/22
 */
public enum ResultCode {
    /** 成功状态码 */
    SUCCESS(1, "成功"),
    /** 参数错误：1001-1999 */
    BAD_REQUEST(1001, "错误的请求"),
    PARAM_IS_INVALID(1002, "参数无效"),
    PARAM_IS_BLANK(1003, "参数为空"),
    PARAM_TYPE_BIND_ERROR(1004, "参数类型错误"),
    PARAM_NOT_COMPLETE(1005, "参数缺失"),
    /** 用户错误：2001-2999*/
    INTERNAL_SERVER_ERROR(2001, "内部服务器错误"),
    USER_NOT_LOGGED_IN(2002, "用户未登录，访问的路径需要验证，请登录"),
    USER_LOGIN_ERROR(2003, "账号不存在或密码错误"),
    USER_ACCOUNT_FORBIDDEN(2004, "账号已被禁用"),
    USER_NOT_EXIST(2005, "用户不存在"),
    USER_HAS_EXISTED(2006, "用户已存在");
    /** 内部服务器错误 **/

    /**
     * 状态码
     */
    private Integer code;

    /**
     * 状态信息
     */
    private String message;

    ResultCode(Integer code, String message){
        this.code = code;
        this.message = message;
    }

    public Integer getCode() {
        return code;
    }

    public String getMessage() {
        return message;
    }
}
